import Vue from 'vue'
import Vuex from 'vuex'
import http from "../api/index.js"

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
	  list:null
  },
  getters:{
	  listcount(state){
		  if(state.list==null||state.list?.length==0){
			  return 0;
		  }else{
			return state.list.reduce((result,item)=>{
				return result+item.goodsCount
			},0)  
		  }
	  }
  },
  mutations: {
	 changelist(state,payload){
		// 因为发现数据缺失了 选中状态，所以循环数据，自己添加
		payload.map(item=>{
			item.selected=true;
			return item;
		})
		state.list=payload;
	 } 
  },
  actions: {
	  asyncgetCartList(context){//发送ajax,请求
		  http.getCartList().then(res=>{
			  console.log(res);
			  if(+res.resultCode===200){
				 context.commit("changelist",res.data||[]);
			  }
		  }).catch(err=>{
			  console.log(err);
		  })
	  }
  },
  modules: {
  }
})
